Various computer architectures and protocols include software applications that are aware of the data needs of other software applications for the purpose of providing data to other software applications. For example, in some publish-subscribe data messaging protocols, cooperative software applications, sometimes referred to as “brokers,” that disseminate data publications to each other provide their subscriptions to each other in order to reduce overall data transmission requirements. Thus, when a data publication of a given publication topic is received by one of the brokers from a publisher, rather than broadcasting the data publication to all the other brokers, the broker checks the subscriptions of the other brokers, and only sends the data publication to those other brokers that have a subscription that matches the publication topic of the data publication. In order to reduce the data storage requirements for storing the subscriptions, as well as to reduce the amount of data transmission resources required to provide the subscriptions to the brokers, data structures, such as Bloom filters, may be used to represent subscriptions with greatly reduced storage requirements. However, it would be advantageous to improve the operation of computers, data storage devices, and communications therebetween by reducing the data storage and transmission requirements in this regard still further.